package com.sofoscorp.android.initdb;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;

public class DBHelperFromSAP_LO extends SQLiteOpenHelper {

//-------------- TABLA KNA1 -------------------------------------
		String sqlCreateKNA1 = "CREATE TABLE IF NOT EXISTS KNA1 (" + 
												  "KUNNR TEXT," +
		                                          "NAME1 TEXT," +
		                                          "NAME2 TEXT," +
		                                          "DIRECCION TEXT," +
		                                          "TLF TEXT," +
		                                          "EMAIL TEXT," +
		                                          "STCD1 TEXT," +
		                                          "STCD2 TEXT," +
		                                          "KDKG1 TEXT," +
		                                          "KVGR1 TEXT," +
		                                          "VKORG TEXT," +
		                                          "VTWEG TEXT," +
		                                          "SPART TEXT," +
		                                          "ZTERM TEXT," +
		                                          "KDGRP TEXT," +
		                                          "VKGRP TEXT," +
		                                          "BZIRK TEXT," +
		                                          "ERDAT TEXT," +
		                                          "PLTYP TEXT," +
		                                          "KTOKD TEXT," +
		                                          "AUFSD TEXT," +
		                                          "PRIMARY KEY (KUNNR)" +
		                                          ")";
		
//-------------- TABLA PLIST -------------------------------------	
		String sqlCreatePLIST = "CREATE TABLE IF NOT EXISTS PLIST (" + 
				                                     "KUNNR TEXT," +
				                                     "VKORG TEXT," +
				                                     "VTWEG TEXT," +				                                   
				                                     "PLTYP TEXT," +
				                                     "PRIMARY KEY (KUNNR, VKORG, VTWEG, PLTYP)" +
				                                     ")";	

//-------------- TABLA MATNR_PRICES -------------------------------------	
		String sqlCreateMATNR_PRICES = "CREATE TABLE IF NOT EXISTS MATNR_PRICES (" + 
				                                                   "MATNR TEXT," +
				                                                   "PLTYP TEXT," +
				                                                   "PRICE TEXT," +
				                                                   "WERKS TEXT," +
				                                                   "PRIMARY KEY (MATNR, PLTYP)" +
				                                                   ")";		
		
//-------------- TABLA DISCOUNTS ----------------------------------	
		String sqlCreateDISCOUNTS = "CREATE TABLE IF NOT EXISTS DISCOUNTS (" + 
	            	                                         "VKORG TEXT," +
	            	                                         "VTWEG TEXT," +
	            	                                         "KVGR1 TEXT," +
	            	                                         "SPART TEXT," +
	            	                                         "DESC REAL," +
	            	                                         "PRIMARY KEY (VKORG, VTWEG, KVGR1, SPART)" +
	            	                                         ")";
		
//-------------- TABLA TVTA -------------------------------------	
		String sqlCreateTVTA = "CREATE TABLE IF NOT EXISTS TVTA (" + 
	                                               "KUNNR TEXT," +
	                                               "BUKRS TEXT," +
	                                               "VKORG TEXT," +
	                                               "KKBER TEXT," +
	                                               "WAERS TEXT," +
	                                               "PRIMARY KEY (KUNNR, BUKRS, VKORG, KKBER)" +
	                                               ")";	

//-------------- TABLA KNKK -------------------------------------
		String sqlCreateKNKK = "CREATE TABLE IF NOT EXISTS KNKK (" + 
	                                               "KUNNR TEXT," +
	                                               "KKBER TEXT," +
	                                               "KLIMK REAL," +
	                                               "SAUFT REAL," +
	                                               "SKFOR REAL," +
	                                               "SSOBL REAL," +
	                                               "ZSAUF REAL," +
	                                               "KLPRZ REAL," +
	                                               "PRIMARY KEY (KUNNR, KKBER)" +
	                                               ")";		

//-------------- TABLA KNVP -------------------------------------	
		String sqlCreateKNVP = "CREATE TABLE IF NOT EXISTS KNVP (" + 
	                                               "KUNNR TEXT," +
	                                               "VKORG TEXT," +
	                                               "VTWEG TEXT," +
	                                               "SPART TEXT," +
	                                               "PARVW TEXT," +
	                                               "KUNN2 TEXT," +
	                                               "PERNR TEXT," +
	                                               "PRIMARY KEY (KUNNR, VKORG, VTWEG, SPART, PARVW)" +
	                                               ")";		
		
//-------------- TABLA MARA -------------------------------------	
		String sqlCreateMARA = "CREATE TABLE IF NOT EXISTS MARA (" + 
				                                   "MATNR TEXT," +
				                                   "ERSDA TEXT," +
				                                   "LVORM TEXT," +
				                                   "MSTAV TEXT," +
				                                   "VMSTA TEXT," +
				                                   "MTART TEXT," +
				                                   "MATKL TEXT," +
				                                   "MEINS TEXT," +
				                                   "MAKTX TEXT," +
				                                   "MEINH TEXT," +
				                                   "SPART TEXT," +
				                                   "UMREZ INTEGER," +
				                                   "UMREN INTEGER," +
				                                   "PRIMARY KEY (MATNR)" +
				                                   ")";	
		
		
//-------------- TABLA MARC -------------------------------------	
		String sqlCreateMARC = "CREATE TABLE IF NOT EXISTS MARC (" + 
	                                               "MATNR TEXT," +
	                                               "WERKS TEXT," +
	                                               "PRIMARY KEY (MATNR, WERKS)" +
	                                               ")";	
		
		
//-------------- TABLA MTARTT -------------------------------------	
		String sqlCreateMTARTT = "CREATE TABLE  IF NOT EXISTS MTARTT (" + 
		                                               "MTART TEXT," +
		                                               "TEXTO TEXT," +
		                                               "PRIMARY KEY (MTART)" +
		                                               ")";		
		
//-------------- TABLA MAT_STOCK -------------------------------------	
		String sqlCreateMAT_STOCK = "CREATE TABLE IF NOT EXISTS MAT_STOCK (" + 
				                                             "MATNR TEXT," +
				                                             "WERKS TEXT," +
				                                             "LGORT TEXT," +
				                                             "CHARG TEXT," +
				                                             "STOCK_UMB REAL," +
				                                             "MEINS TEXT," +
				                                             "STOCK_UMP REAL," +
				                                             "MEINH TEXT," +
				                                             "PRIMARY KEY (MATNR, WERKS, LGORT, CHARG)" +
				                                             ")";		
		
//-------------- TABLA MVKE -------------------------------------	
		String sqlCreateMVKE = "CREATE TABLE IF NOT EXISTS MVKE (" + 
				                                   "MATNR TEXT," +
					                               "VKORG TEXT," +
					                               "VTWEG TEXT," +
					                               "MVGR1 TEXT," +
					                               "MVGR2 TEXT," +
					                               "MVGR3 TEXT," +
					                               "MVGR4 TEXT," +
					                               "PRIMARY KEY (MATNR, VKORG, VTWEG)" +
					                               ")";		
		
//-------------- TABLA TVM1T -------------------------------------	
			String sqlCreateTVM1T = "CREATE TABLE IF NOT EXISTS TVM1T (" + 
					                                     "MVGR1 TEXT," +
						                                 "SPRAS TEXT," +
						                                 "TEXTO TEXT," +
						                                 "PRIMARY KEY (MVGR1, SPRAS)" +
						                                 ")";			

//-------------- TABLA TVM1T -------------------------------------	
			String sqlCreateTVM2T = "CREATE TABLE IF NOT EXISTS TVM2T (" + 
					                                     "MVGR2 TEXT," +
						                                 "SPRAS TEXT," +
						                                 "TEXTO TEXT," +
						                                 "PRIMARY KEY (MVGR2, SPRAS)" +
						                                 ")";			
			
//-------------- TABLA TVM1T -------------------------------------	
			String sqlCreateTVM3T = "CREATE TABLE IF NOT EXISTS TVM3T (" + 
					                                     "MVGR3 TEXT," +
						                                 "SPRAS TEXT," +
						                                 "TEXTO TEXT," +
						                                 "PRIMARY KEY (MVGR3, SPRAS)" +
						                                 ")";
			
//-------------- TABLA TVM1T -------------------------------------	
			String sqlCreateTVM4T = "CREATE TABLE IF NOT EXISTS TVM4T (" + 
					                                     "MVGR4 TEXT," +
						                                 "SPRAS TEXT," +
						                                 "TEXTO TEXT," +
						                                 "PRIMARY KEY (MVGR4, SPRAS)" +
								                         ")";		
	
	public DBHelperFromSAP_LO(Context context, String name,
			CursorFactory factory, int version) {
		super(context, name, factory, version);

	}

	@Override
	public void onCreate(SQLiteDatabase db) {
		db.execSQL(sqlCreateKNA1);         //Maestro de Clientes
		db.execSQL(sqlCreatePLIST);        //Listas de Precios por Clientes
		db.execSQL(sqlCreateMATNR_PRICES); //Precios de Material
		db.execSQL(sqlCreateDISCOUNTS);    //Descuentos
		db.execSQL(sqlCreateTVTA);		   //Control de Creditos
		db.execSQL(sqlCreateKNKK); 		   //Gestion de Creditos por Cliente
		db.execSQL(sqlCreateKNVP);         //Relacion Cliente/Dest Mercancia/Vendedor
		db.execSQL(sqlCreateMARA);         //Maestro de Materiales
		db.execSQL(sqlCreateMARC);         //Materiales por Centro
		db.execSQL(sqlCreateMTARTT);       //Tipos de Material
		db.execSQL(sqlCreateMAT_STOCK);    //Stock de Materiales
		db.execSQL(sqlCreateMVKE);         //Vista de Ventas
		db.execSQL(sqlCreateTVM1T);		   //Texto Grupo de Material 1
		db.execSQL(sqlCreateTVM2T);		   //Texto Grupo de Material 2
		db.execSQL(sqlCreateTVM3T);		   //Texto Grupo de Material 3
		db.execSQL(sqlCreateTVM4T);		   //Texto Grupo de Material 4
		
	}

	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		db.execSQL(sqlCreateKNA1);         //Maestro de Clientes
		db.execSQL(sqlCreatePLIST);        //Listas de Precios por Clientes
		db.execSQL(sqlCreateMATNR_PRICES); //Precios de Material
		db.execSQL(sqlCreateDISCOUNTS);    //Descuentos
		db.execSQL(sqlCreateTVTA);		   //Control de Creditos
		db.execSQL(sqlCreateKNKK); 		   //Gestion de Creditos por Cliente
		db.execSQL(sqlCreateKNVP);         //Relacion Cliente/Dest Mercancia/Vendedor
		db.execSQL(sqlCreateMARA);         //Maestro de Materiales
		db.execSQL(sqlCreateMARC);         //Materiales por Centro
		db.execSQL(sqlCreateMTARTT);       //Tipos de Material
		db.execSQL(sqlCreateMAT_STOCK);    //Stock de Materiales
		db.execSQL(sqlCreateMVKE);         //Vista de Ventas
		db.execSQL(sqlCreateTVM1T);		   //Texto Grupo de Material 1
		db.execSQL(sqlCreateTVM2T);		   //Texto Grupo de Material 2
		db.execSQL(sqlCreateTVM3T);		   //Texto Grupo de Material 3
		db.execSQL(sqlCreateTVM4T);		   //Texto Grupo de Material 4
		
	}

}
